"""
连接服务器两种方法：
    - 用户名和密码
    - 公钥和私钥（公司）
        - 在自己电脑生成一堆密钥,公钥+私钥（ssh-keygen）
        - 把公钥复制到到远程主机上面（ssh-copy-id -i id_rsa.pub ）
"""

# 基于公钥连接
import paramiko

private_key = paramiko.RSAKey.from_private_key_file('c:\\Users\\22946\\.ssh\\id_rsa')

# 创建SSH对象
ssh = paramiko.SSHClient()
# 允许连接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
ssh.connect(hostname='192.168.1.99', port=22, username='root', pkey=private_key)

# 执行命令
stdin, stdout, stderr = ssh.exec_command('uptime')
# 获取命令结果
result = stdout.read()

# 关闭连接
ssh.close()
print(result)
